class Product(object):
    # 类属性可以理解为java中的静态变量
    # 这是一个类属性,在这里的业务含义是记录一共添加了多少个产品
    num = 0

    def __init__(self, name, price, product_no, stock):
        # 类的实例属性,可以理解为构造方法
        print('实例化对象的时候执行....')
        self.name = name
        self.price = price
        self.product_no = product_no
        self.stock = stock  # 库存
        # 假设每添加一个产品时,num加1
        Product.num = Product.num + 1

    # 定义一个卖出的实例方法
    def sell(self, num):
        print('出售产品:%s,当前库存:%s,出售个数:%s' % (self.name, self.stock, num))
        self.stock = self.stock - num


p = Product('苹果', 12.89, 'P01', 10)
print(p.__dict__)

# 调用实例方法
p.sell(2)
print(p.__dict__)
